package com.fac.dto;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import javax.validation.constraints.DecimalMin;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.io.Serializable;
import java.math.BigDecimal;

/**
 * 退款DTO
 */
@Data
@ApiModel(description = "退款请求参数")
public class PaymentRefundDTO implements Serializable {

    @NotNull(message = "订单ID不能为空")
    @ApiModelProperty(value = "订单ID", example = "1", required = true)
    private Long orderId;

    @NotBlank(message = "订单类型不能为空")
    @ApiModelProperty(value = "订单类型：租赁单/维修单", example = "租赁单", required = true)
    private String orderType;

    @NotNull(message = "退款金额不能为空")
    @DecimalMin(value = "0.01", message = "退款金额必须大于0")
    @ApiModelProperty(value = "退款金额", example = "1000.00", required = true)
    private BigDecimal amount;

    @ApiModelProperty(value = "退款备注", example = "设备完好，退还全部押金")
    private String remarks;
} 